package org.example.TOOL;









import java.util.Random;

public class ChineseNameGenerator {
    // 姓氏数组（可扩展）
    private static final String[] SURNAMES = {
            // 单姓（前100）
            "张", "王", "李", "刘", "陈", "杨", "赵", "黄", "周", "吴",
            "徐", "孙", "马", "朱", "胡", "郭", "林", "何", "高", "罗",
            "宋", "郑", "谢", "韩", "唐", "冯", "于", "董", "萧", "程",
            "曹", "袁", "邓", "许", "傅", "沈", "曾", "彭", "吕", "苏",
            "卢", "蒋", "蔡", "贾", "丁", "魏", "薛", "叶", "阎", "余",
            "潘", "杜", "戴", "夏", "钟", "汪", "田", "任", "姜", "范",
            "方", "石", "姚", "谭", "廖", "邹", "熊", "金", "陆", "郝",
            "孔", "白", "崔", "康", "毛", "邱", "秦", "江", "史", "顾",
            "侯", "邵", "孟", "龙", "万", "段", "雷", "钱", "汤", "尹",
            "黎", "易", "常", "武", "乔", "贺", "赖", "龚", "文", "庞",
            "樊", "兰", "殷", "施", "陶", "洪", "翟", "安", "颜", "倪",
            // 复姓（后20）
            "欧阳", "司马", "上官", "诸葛", "夏侯", "尉迟", "公孙", "皇甫", "宇文", "长孙",
            "慕容", "令狐", "端木", "东方", "赫连", "皇甫", "南宫", "万俟", "闻人", "钟离"
    };

    private static final String[] NAME_CHARS = {
            // 单字名（350个）
            "伟", "芳", "娜", "洋", "静", "超", "晓", "斌", "丽", "涛",
            "凯", "琳", "军", "雪", "勇", "娟", "辉", "婷", "嵩", "笛",
            "鹃", "燕", "柏", "冰冰", "子怡", "志玲", "静蕾", "紫棋", "冬雨",
            "浩然", "子轩", "欣怡", "梓涵", "雨桐", "俊杰", "诗涵", "若曦", "晨曦", "欣妍",
            "梦瑶", "思琪", "紫萱", "雨欣", "可馨", "佳琪", "梦洁", "雅雯", "雪柔", "欣悦",
            "诗雨", "紫涵", "雨彤", "欣雅", "诗琪", "若雪", "雨萱", "思彤", "欣瑶", "诗敏",
            "雨婷", "欣妍", "诗韵", "若曦", "雨欣", "欣怡", "诗雅", "若雪", "雨萱", "思涵",
            "欣悦", "诗琪", "若雨", "雨欣", "欣妍", "诗涵", "若曦", "雨桐", "欣雅", "诗雨",
            "若雪", "雨欣", "欣怡", "诗雅", "若雨", "雨桐", "欣雅", "诗韵", "若曦", "雨欣",
            "欣妍", "诗涵", "若雪", "雨欣", "欣怡", "诗雅", "若雨", "雨桐", "欣雅", "诗韵",
            "若曦", "雨欣", "欣妍", "诗涵", "若雪", "雨欣", "欣怡", "诗雅", "若雨", "雨桐",
            "欣雅", "诗韵", "若曦", "雨欣", "欣妍", "诗涵", "若雪", "雨欣", "欣怡", "诗雅",
            "若雨", "雨桐", "欣雅", "诗韵", "若曦", "雨欣", "欣妍", "诗涵", "若雪", "雨欣",
            "欣怡", "诗雅", "若雨", "雨桐", "欣雅", "诗韵", "若曦", "雨欣", "欣妍", "诗涵",
            "若雪", "雨欣", "欣怡", "诗雅", "若雨", "雨桐", "欣雅", "诗韵", "若曦", "雨欣"
    };
    public static String generateRandomName() {
        Random random = new Random();

        // 1. 随机选择姓氏
        String surname = SURNAMES[random.nextInt(SURNAMES.length)];

        // 2. 随机决定名字长度（1或2个字）
        int nameLength = random.nextInt(2)+1 ; // 生成 0~1 → +1 后为 1~2

        // 3. 随机选取名字字符
        StringBuilder nameBuilder = new StringBuilder();
        for (int i = 0; i < 1; i++) {
            String charName = NAME_CHARS[random.nextInt(NAME_CHARS.length)];
            nameBuilder.append(charName);
        }

        // 4. 组合并返回全名
        return surname + nameBuilder.toString();
    }

    public static void main(String[] args) {
        // 测试生成 10 个随机姓名
        for (int i = 0; i < 10; i++) {
            System.out.println(generateRandomName());
        }
    }
}